User Interface With Menu Abstractions And Content Abstractions

ABSTRACT

Media menu items are generated within a media interface environment. Media menu item abstractions are generated, one of the media menu item abstractions arranged in a foreground position, and one or more of the media menu item abstractions arranged in background positions in the media interface environment. Selection of a media menu items transitions to a corresponding content menu interface.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a continuation (and claims the benefit of priorityunder 35 USC 120) of U.S. patent application Ser. No. 11/530,834,entitled “User Interface With Menu Abstractions And ContentAbstractions,” which was filed on Sep. 11, 2006. The disclosure of thisapplication is incorporated herein by reference in its entirety.

BACKGROUND

This disclosure is related to media processing systems and methods.

Media devices, such as digital video and audio players, can includemultiple functions and capabilities, such as playing stored content,browsing and selecting from recorded content, storing and/or receivingcontent selected by a user, and the like. These various functions canoften be grouped according to content types, e.g., movies, music,television programs, photos, etc. The functions can then be accessedthrough various user interfaces that are typically arranged in ahierarchal manner, having a “root” or “home” user interface at the topof the hierarchy, from which the various context-dependent userinterfaces are accessible. The user interfaces can include bothgraphical and textual features. It is desirable that the user interfaceconveys information to the user in an intuitive manner, and readilyprovides access to various functions.

SUMMARY

Disclosed herein are systems and methods for processing a media userinterface. In one example implementation, a media menu interfacecomprising a plurality of media menu items is generated. One or more ofthe media menu items can be highlighted. A plurality of media menu itemabstractions corresponding to the media menu items is generated, and themedia menu item abstractions are arranged so that a media menu itemabstraction corresponding to a highlighted media menu item is displayedin a foreground position. The media menu item abstractions that do notcorrespond to the highlighted media menu item are arranged in backgroundpositions.

In another example implementation, a computer readable medium storesinstructions that are executable by a processing device. Upon executionof the instructions, the processing device generates a home interfaceenvironment, and generates a home menu within the home interfaceenvironment. The home menu comprises a plurality of home menu items. Theprocessing device also generates a plurality of home menu itemabstractions, and one of the home menu item abstractions is arranged ina foreground position while the remaining home menu item abstractionsare arranged in background positions in the home interface environment.The foreground positions and background positions define amultidimensional path extending from a terminus.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of an example media processing system.

FIG. 2 is a block diagram of an example remote control device for themedia processing system.

FIG. 3 is an example network environment in which a media processingsystem in accordance with FIG. 1 may be implemented.

FIG. 4 is a block diagram of an example media menu interfaceenvironment.

FIGS. 5 and 6 are block diagrams of an example transition of media menuitem abstractions in the media menu interface environment.

FIG. 7 is a block diagram of another example transition of media menuitem abstractions in the media menu interface environment.

FIG. 8 is a block diagram of an example display of media menu itemabstractions based on a selected menu item.

FIG. 9 is a block diagram of another example media menu interfaceenvironment.

FIG. 10 is a block diagram of another example media menu interfaceenvironment.

FIG. 11 is a block diagram of another example transition of media menuitem abstractions in the media menu interface environment.

FIG. 12 is a block diagram of another example media menu interfaceenvironment.

FIG. 13 is a flow diagram of an example icon display process.

FIG. 14 is a flow diagram of an example icon transition process.

FIG. 15 is a flow diagram of another example icon transition process.

FIG. 16 is a flow diagram of another example icon transition process.

FIGS. 17-20 are screenshots of another example media menu interfaceenvironment.

FIGS. 21 and 22 are block diagrams of an example transition from themedia menu interface environment to a content menu interfaceenvironment.

FIG. 23 is a block diagram of an example content menu interfaceenvironment.

FIG. 24 is a block diagram of an example transition of a contentabstraction through an egress terminus.

FIG. 25 is a block diagram of an example sales content menu interfaceenvironment.

FIG. 26 is a block diagram of an example purchase content interfaceenvironment.

FIG. 27 is a block diagram of an example preview content menu interfaceenvironment.

FIGS. 28 and 29 are block diagrams of another example content menuinterface environment.

FIG. 30 is a block diagram of another example content menu interfaceenvironment.

FIG. 31 is a block diagram of another example content menu interfaceenvironment.

FIG. 32 is a block diagram of an example rendering of contentabstractions in a multidimensional environment.

FIG. 33 is a block diagram of another example content menu interfaceenvironment.

FIG. 34 is a flow diagram of an example process for generating a mediamenu interface environment.

FIG. 35 is a flow diagram of an example process for transitioning from amedia menu interface environment to a content menu interfaceenvironment.

FIG. 36 is a flow diagram of an example process for displaying contentabstractions.

FIG. 37 is a flow diagram of an example process for generating contentabstractions corresponding to content menu items.

FIG. 38 is a flow diagram of an example process for sorting library menuitems.

FIG. 39 is a diagram of an example media playback environment.

DETAILED DESCRIPTION

FIG. 1 is a block diagram of an example media processing system 100. Themedia processing system 100 can transmit and receive media data and datarelated to the media data. The media data can be stored in a data store102, such as a memory device, and be processed by a processing device104 for output on a display device, such as a television, a computermonitor, a game console, a hand held portable device, and the like,and/or an audio device, such as a multi-channel sound system, a portablemedia player, a computer system, and the like. The media processingsystem 100 may be used to process media data, for example, video dataand audio data received over one or more networks by an input/output(I/O) device 106. Such media data may include metadata, e.g., songinformation related to audio data received, or programming informationrelated to a television program received.

The media data and related metadata may be provided by a singleprovider, or may be provided by separate providers. In oneimplementation, the media processing system 100 can be configured toreceive media data from a first provider over a first network, such as acable network, and receive metadata related to the video data from asecond provider over a second network, such as a wide area network(WAN). Example media data include video data, audio data, contentpayload data, or other data conveying audio, textual and/or video data.

In another implementation, the media processing system 100 can beconfigured to receive media data and metadata from a computing device,such as a personal computer. In one example of this implementation, auser manages one or more media access accounts with one or more contentproviders through the personal computer. For example, a user may managea personal iTunes® account with iTunes® software, available from AppleComputer, Inc. Media data, such as audio and video media data, can bepurchased by the user and stored on the user's personal computer and/orone or more data stores. The media data and metadata stored on thepersonal computer and/or the one or more data stores can be selectivelypushed and/or pulled for storage in the data store 102 of the mediaprocessing system 100.

In another implementation, the media processing system 100 can be usedto process media data stored in several data stores in communicationwith a network, such as wired and/or wireless local area network (LAN),for example. In one implementation, the media processing system 100 canpull and/or receive pushed media data and metadata from the data storesover the network for presentation to a user. For example, the mediaprocessing system 100 may be implemented as part of an audio and videoentertainment center having a video display device and an audio outputdevice, and can pull media data and receive pushed media data from oneor more data stores for storage and processing. At the entertainmentcenter, a user can, for example, view photographs that are stored on afirst computer while listening to music files that are stored on asecond computer.

In one implementation, the media processing system 100 includes a remotecontrol device 108. The remote control device 108 can include arotational input device 110 configured to sense touch actuations andgenerate remote control signals therefrom. The touch actuations caninclude rotational actuations, such as when a user touches therotational input device 110 with a digit and rotates the digit on thesurface of the rotational input device 110. The touch actuations canalso include click actuations, such as when a user presses on therotational input device 110 with enough pressure to cause the remotecontrol device 108 to sense a click actuation.

In one implementation, the functionality of the media processing system100 is distributed across several engines. For example, the mediaprocessing system 100 may include a controller engine 112, a userinterface (UI) engine 114, and one or more media engines 116-1, 116-2,and 116-n. The engines may be implemented in software as softwaremodules or instructions, or may be implemented in hardware, or in acombination of software and hardware.

The control engine 112 is configured to communicate with the remotecontrol device 108 by a link, such as a wireless infrared signal orradio frequency signal. The remote control device 108 can transmitremote control signals generated, for example, from touch actuations ofthe rotational input device 110 to the control engine 112 over the link.In response, the control engine 112 is configured to receive the remotecontrol signals and generate control signals in response. The controlsignals are provided to the processing device 104 for processing.

The control signals generated by the control engine 112 and processed bythe processing device 104 can invoke one or more of the UI engine 114and media engines 116-1-116-n. In one implementation, the UI engine 114manages a user interface to facilitate data presentation for the mediaengines 116-1-116-n and functional processing in response to userinputs.

In one implementation, the media engines 116 can include one or morecontent-specific engines, such as a movies engine, television programengine, music engine, and the like. Each engine 116 can be instantiatedto support content-specific functional processing. For example, a movieengine to support movie-related functions can be instantiated byselecting a “Movies” menu item. Example movie-related functions includepurchasing movies, viewing movie previews, viewing movies stored in auser library, and the like. Likewise, a music engine to supportmusic-related functions can be instantiated by selecting a “Music” menuitem. Example music-related functions include purchasing music, viewingmusic playlists, playing music stored in a user library, and the like.

The media processing system 100 of FIG. 1 can also implement differentfunctional distribution architectures that have additional functionalblocks or fewer functional blocks. For example, the engines 116 can beimplemented in a single monolithic engine.

FIG. 2 is a block diagram of an example remote control device 108 forthe media processing system 100. The remote control device 108 includesa rotational input device 110, a processing device 150, and a wirelesscommunication subsystem 152. The rotational input device 110 defines asurface that can sense a touch actuation, such as the presence of afinger on the surface, and can further generate a control signal basedon a rotation of the finger on the surface. In one implementation, atouch sensitive array is disposed beneath the surface of the rotationalinput device 110. The touch sensitive array can be disposed according topolar coordinates, i.e., r and Θ, or can be disposed according toCartesian coordinates, i.e., x and y.

The rotational input device areas 160, 162, 164, 166 and 168 arereceptive to press actuations. In one implementation, the areas includea menu area 160, a reverse/previous area 162, a play/pause area 164, aforward/next area 166, and a select area 168. The areas 160-168, inaddition to generating signals related to their descriptivefunctionalities, can also generate signals for context-dependentfunctionality. For example, the menu area 160 can generate signals tosupport the functionality of dismissing an onscreen user interface, andthe play/pause area 164 can generate signals to support the function ofdrilling down into a hierarchal user interface. In one implementation,the areas 160-168 comprise buttons disposed beneath the surface of therotational input device 110. In another implementation, the areas160-168 comprise pressure sensitive actuators disposed beneath thesurface of the rotational input device 110.

The processing device 150 is configured to receive the signals generatedby the rotational input device 110 and generate corresponding remotecontrol signals in response. The remote control signals can be providedto the communication subsystem 152, which can wirelessly transmit theremote control signals to the media processing system 100.

Although shown as comprising a circular surface, in anotherimplementation, the rotational input device 110 can comprise arectangular surface, a square surface, or some other shaped surface.Other surface geometries that accommodate pressure sensitive areas andthat can sense touch actuations may also be used, e.g., an oblong area,an octagonal area, etc.

Other actuation area configurations may also be used. For example, inanother implementation, the remote control device 108 can also include aseparate actuation button 170. In this implementation, the areascomprise a “+” or increase area 160, a reverse/previous area 162, a “−”or decrease area 164, a forward/next area 166, a play/pause area 168,and a menu area 170.

FIG. 3 is an example network environment 200 in which a media processingsystem 100 in accordance with FIG. 1 may be implemented. The mediaprocessing system 100 receives, for example, user input through a remotecontrol device 108 and media data over a network 202, such as a wired orwireless LAN. In one implementation, the network 202 communicates with awide area network 212, such as the Internet, through an I/O device 203,such as a router, server, cable modem, or other computing and/orcommunication processing device. The media processing system 100processes the media data for output to one or more output devices 204.The media processing system 100 can receive the media data from one ormore data stores connected to the network 202, such as computing devices206 and 208, and a data store 210.

The media data can be received through the network 212 by one of thecomputing devices, such as computing device 208. The network 212 caninclude one or more wired and wireless networks, such as the Internet.The media data is provided by one or more content providers 214. Forexample, the content provider 214-1 may provide media data that isprocessed by the media processing system 100 and output through theoutput devices 206, and the content provider 214-2 may provide metadatarelated to the media data for processing by the media processing system100. Such metadata may include episodic content, artist information, andthe like. A content provider 214 can also provide both media data andrelated metadata.

In one implementation, the media processing system 100 can alsocommunicate with one or more content providers 214 directly. Forexample, the media processing system 100 can communicate with thecontent providers the wireless network 202, the I/O device 203, and thenetwork 212. The media processing system 100 can also communicate withthe content providers 214 thorough other network configuration, e.g.,through a direct connection to a cable modem, through a router, orthrough one or more other communication devices. Example communicationscan include receiving sales information, preview information, orcommunications related to commercial transactions, such as purchasingaudio files and video files.

In another implementation, the media processing system 100 can receivecontent from any of the computing devices 206 and 208, and other suchcomputing devices or data stores 210 available on the network 202through sharing. Thus, if any one or more of the computing devices ordata stores are unavailable, media data and/or metadata one theremaining computing devices or other such computing devices or datastores can still be accessed.

FIG. 4 is a block diagram of an example media menu interface environment300. The example media menu interface environment 300 provides a menuinterface from which one or more of a plurality of content-specificmenus and corresponding functions may be selected.

In one implementation, the media menu interface environment 300 includesa media menu 302 identified in part by an icon 304 in a title locationand a title 306, e.g., “iTv.” The media menu 302 includes media menuitems 310, 312, 314, 316, 318, 320 and 322, respectively entitled“Movies,” “TV Shows,” “Music,” “Podcasts,” “Photos,” “Settings,” and“Streaming.” The media menu 302 can also include a highlight indicator324 that highlights a media menu item. In one implementation, thehighlight indicator 324 is a graphical indicator that provides theeffect of a diffused backlighting, e.g., a glow highlight that providesthe appearance of a backlit surface beneath the highlighted menu item.

A highlight selection of a menu item by the highlight indicator 324indicates that the menu item is eligible for a further selection action,e.g., eligible to be selected by actuating the select area 168 on therotational input device 110. The highlight indicator 324 can be movedvertically, for example, by actuating menu area 160 and the play/pausearea 164 on the rotational input device 110.

Upon the further selection, a process associated with the highlightedmenu item is performed. In one implementation, selection of the mediamenu item 310 when highlighted generates a movie content menuenvironment for processing media data related to movies, such as moviepreviews and full-length movies. Selection of the media menu item 312when highlighted generates a TV Shows content menu environment forprocessing media data related to television programs, such as programepisodes. Selection of the media menu item 314 when highlightedgenerates a Music content menu environment for processing media datarelated to music, such as audio files and music video files. Selectionof the media menu item 316 when highlighted generates a Podcasts contentmenu environment for processing media data related to podcasts.Selection of the media menu item 318 when highlighted generates a Photoscontent menu environment for processing media data related to photos,such as photographs and videos. Selection of the media menu item 320when highlighted generates a settings menu environment for changingsettings of the media system, such as setting restrictions and sharedfiles. Selection of the media menu item 322 when highlighted generates aStreaming menu environment for identifying and selecting media datastored on data stores or computer devices accessible through a network,such as media data stored on computing devices 206 and 208 and datastore 210 and accessible over the network 202 of FIG. 2.

The media menu 302 can also include a child indicator 326 associatedwith a media menu item. The child indicator 326 indicates that one ormore sub-menus or sub-items, e.g., folders, will become available orwill be accessed upon selection of the corresponding media menu item.

The media menu interface environment 300 also includes media menu itemabstractions that correspond to one or more of the media menu items. Forexample, the media menu item abstractions 330, 332, 334 and 336correspond to media menu items 310, 312, 314 and 316, respectively. Inone implementation, the media menu item abstractions are graphicalrepresentations of the content of corresponding media menu items. Forexample, the media menu item abstraction 330, which corresponds to theMovies media menu item 310, can be a movie icon. Likewise, the mediamenu item abstraction 332, which corresponds to the TV Shows media menuitem 312, can be a television icon; the media menu item abstraction 334,which corresponds to the Music media menu item 314, can be a music icon,etc.

In one implementation, the media menu item abstractions 330-336 arearranged such that at least one of the media menu item abstractions,e.g., icon 330, is in a foreground position, and the remaining the mediamenu item abstractions, e.g., icons 332-336, are in one or morebackground positions. The foreground and background positions define amultidimensional path 350, and the media menu item abstraction 336 is ina background position that defines a terminus of the multidimensionalpath. In one implementation, the terminus is at the edge 352 of themedia menu interface environment 300.

In one implementation, the media menu item abstraction corresponding toa highlighted menu is displayed in the foreground position. For example,in FIG. 4, the media menu item abstraction 330, which corresponds to thehighlighted Movies media menu item 310, is displayed in the foregroundposition.

In another implementation, one or more of the media menu itemabstractions in the background positions may be displayed with aneffect, e.g., a blurring effect. The blurring effect can be used tofurther deemphasize the media menu item abstractions. For example, inFIG. 4, the media menu items 332-336 can be blurred. In anotherimplementation, a media menu item abstraction is blurred to a degreesubstantially or functionally proportional to the proximity of the mediamenu item abstraction to the foreground position. For example, the mediamenu item abstraction 336 can be extremely blurred, while the media menuitem abstraction 332 can be only slightly out of focus.

In another implementation, media menu item abstractions are scaled insize, for example, substantially or functionally proportionally to theproximity of the media menu item abstraction to the foreground position.For example, the media menu item abstraction 336 can be displayed atapproximately 20% of full scale, and the media menu item abstraction 330can be displayed at 100% of full scale.

In one implementation, changing the position of the highlight indicator324 causes the highlight indicator to transition from a highlightedmedia menu item to a media menu item to be highlighted, e.g., anadjacent media menu item. The transition of the highlight indicator 324likewise causes the media menu item abstractions to transition betweenthe foreground and background positions along the multidimensional path350 until the media menu item abstraction corresponding to thenewly-highlighted media menu item is in the foreground position.

FIGS. 5 and 6 are block diagrams of an example transition of media menuitem abstractions in the media menu interface environment 300. In FIG.5, the highlight indicator 324 is transitioned from media menu item 310to media menu item 312, as indicated by the directional arrow 360. Inresponse, the media menu item abstractions 332, 334 and 336 transitionalong the multidimensional path 350, as indicated by the directionalarrow 362. As the media menu item abstraction 336 transitions out of theterminus position, another media menu item abstraction 338, whichcorresponds to the Photos media menu item 318, emerges into the terminusposition. In this implementation, the media menu item abstraction 338emerges from the edge 352 of the media menu interface environment 300.

Because the media menu item abstraction 332 is transitioning from abackground position into the foreground position previously occupied bymedia menu item abstraction 330, the media menu item abstraction 330transitions out of the media menu interface environment 300, asindicated by directional arrow 364. In the example implementation shownin FIG. 5, the media menu item abstraction 330 transitions off the edge352 of the media menu interface environment 300.

In one implementation, the scale of the media menu item abstractiontransitioning off the edge 352 of the media menu interface environment300 can be increased to simulate a “fly by” effect. For example, thescale of the media menu item abstraction 330 can be proportionallyincreased from 100% to 150% of full scale as the media menu itemabstraction 330 transitions from the foreground position to the edge 352of the media menu interface environment 300.

FIG. 6 is a block diagram of the end result of the transition of themenu abstractions in the media menu interface environment 300. Thearrangement of the media menu item abstractions is similar to that ofFIG. 4, except that the media menu item abstraction 332 is now in theforeground position and the media menu item abstractions 334, 336 and338 are in the background positions. Likewise, the TV Shows media menuitem 312, which corresponds to the media menu item abstraction 332 inthe foreground position, is now highlighted by the highlight indicator324.

FIG. 7 is a block diagram of another example transition of media menuitem abstractions in the media menu interface environment 300. In FIG.7, the highlight indicator 324 is transitioned from media menu item 312to media menu item 310, as indicated by the directional arrow 370. Inresponse, the media menu item abstractions 332, 334, 336 and 338transition along the multidimensional path 350, as indicated by thedirectional arrow 372. During this transition, the media menu itemabstraction 332 also transitions from a foreground position to abackground position, and the media menu item abstraction 338 transitionsfrom the terminus position out of the media menu interface environment300 through the edge 352. As the media menu item abstraction 338transitions out of the terminus position, another media menu itemabstraction 336, which corresponds to the Podcasts media menu item 316,emerges into the terminus position.

The media menu item abstraction 330, which corresponds to the Moviesmenu item 310 which is to be highlighted by the highlight indicator 324,emerges from the edge 352 and back into the foreground position, asindicated by the directional arrow 374. In the example implementationshown in FIG. 7, the media menu item abstraction 330 emerges from theedge 352 of the media menu interface environment at an increased scaleto simulate a “fly by” effect. For example, the scale of the media menuitem abstraction 330 can be proportionally decreased from 150% to 100%of full scale as the media menu item abstraction 330 transitions fromthe edge 352 of the media menu interface environment 300 to theforeground position.

Once the transitions indicated by the directional arrows 370, 372 and374 are complete, the media menu interface environment 300 returns tothe state as depicted in FIG. 4.

FIG. 8 is a block diagram of an example display of media menu itemabstractions based on a selected menu item 320. In this exampleimplementation, the highlight indicator 324 can transition verticallybetween media menu items 310 and 322, but does not wrap between mediamenu items 310 and 322. Thus to return the highlight indicator 324 tothe media menu item 310, the highlight indicator 324 must transitionthrough the media menu items 318, 316, 314 and 312. The media menu itemabstractions 340 and 342 transition through the multidimensional path ina similar manner. For example, transitioning the highlight indicator 324to the Streaming media menu item 322 will cause the media menu itemabstraction 340 to transition out of the media menu interfaceenvironment 300 through the edge 352, and cause the media menu itemabstraction 342 to transition from the background position into theforeground position. In the example implementation of FIG. 8, thehighlight indicator 324 cannot transition beyond the Streaming mediamenu item 322, and thus additional media menu item abstractions do nottransition into the terminus position.

Likewise, transitioning the highlight indicator 324 to the photos mediamenu item 318 will cause the media menu item abstraction 340 totransition into a background position and the media menu itemabstraction 342 to transition further into the background positions, andwill also cause the media menu item abstraction 338 to emerge into theforeground position.

FIG. 9 is a block diagram of another example media menu interfaceenvironment 301. In this example implementation, the highlight indicator324 can transition vertically between media menu items 310 and 322, andcan wrap between media menu items 310 and 322. Thus, to return thehighlight indicator 324 to the media menu item 310, the highlightindicator 324 can transition out of the bottom of the media menu 302 andreappear at the top of the media menu 302, beneath the icon 304. Themedia menu item abstraction 342 thus transitions out of the media menuinterface environment 301. Additionally, the media menu itemabstractions 330, 332 and 334 transition through the backgroundpositions, and the media menu item abstraction 336 emerges from the edge352 into the terminus position.

FIG. 10 is a block diagram of another example media menu interfaceenvironment 303. In this example implementation, the highlight indicator324 is stationary, and the media menu items 310-322 vertically wrap inan up or down direction in response to a command to change a highlightedmedia menu item. The media menu items 330-342 likewise transition in acorresponding manner, similar to the transitions described with respectto FIG. 9 above. As shown in FIG. 10, the TV Shows media menu item 312is highlighted, and thus the media menu item abstractions 332, 334, 336and 338 are arranged in the foreground and background positions asindicated. The remaining media menu item abstractions 340, 342 and 330can emerge into the media menu interface environment 303 incorresponding order, depending on the direction in which the media menuitems 310-322 are scrolled.

FIG. 11 is a block diagram of another example media menu interfaceenvironment 305. The example implementation of FIG. 11 can transitionthe media menu item abstractions 330-342 in a similar manner asdescribed with reference to FIGS. 4-9, however, the media menu itemabstractions 330-342 transition out the menu interface environment 305through another edge 354.

Other processes can be implemented to illustrate a transition of a mediamenu item abstraction out of the media menu interface environment. Forexample, in one implementation, a media menu item abstraction isincreased in size and fades out, simulating an effect of verticallylaunching from the media menu interface environment. In anotherimplementation, a media menu item abstractions follows a straight path,or a linear path, from the foreground position out of the media menuinterface environment. Other visual effects can also be used.

FIG. 12 is a block diagram of another example media menu interfaceenvironment 307. In the example media menu interface environment 307,the media menu item abstractions are arranged in foreground andbackground positions, and one of the background positions is near aterminus of a multidimensional path 351. The terminus is defined by avanishing point, and the media menu item abstractions emerge into themenu interface environment 307 from the vanishing point when the mediamenu item abstractions are transitioning from the background positionsinto the foreground positions, and transition out of the menu interfaceenvironment 307 at the vanishing point when the media menu itemabstractions are transitioning from the foreground position into thebackground positions, as indicated by directional arrow 390.

In another implementation, the media menu item abstractions can includea reflection effect. For example, the media menu item abstractions 332,334, 336 and 338 include reflections 333, 335, 337 and 339. Thereflection effect further emphasizes a multidimensional visual effect,and can be implemented in any of the implementations described herein.

In another implementation, the number of media menu item abstractionsdisplayed along the multidimensional path 350 can vary depending on thesize of the media menu item abstractions. For example, the mediaprocessing system 100 may normally display four media menu itemabstractions; however, if the media menu item abstractions are increasedor decreased in display size, the number of media menu item abstractionsto be displayed can be decreased or increased, respectively.

In the example implementations described above, the transitioning of themedia menu item abstractions corresponds to the transitioning of thehighlight indicator 324, e.g., as the highlight indicator 324transitions from one media menu item to the next, the media menu itemabstractions likewise transition through the multidimensional path 350in a substantially synchronous manner.

In another implementation, the media menu item abstractions do nottransition until the highlight indicator 324 has settled on a media menuitem and no further commands to transition the highlight indicator 324are received. In yet another implementation, the media menu itemabstractions and the highlight indicator 324 transition substantiallyinstantaneously, e.g., within several video frames or within one videoframe. Other transition animations may also be used.

FIG. 13 is a flow diagram of an example icon display process 400. In oneexample implementation, the processing device 104 and/or UI engine 114can perform operations to implement the process 400.

Stage 402 arranges a foreground position and background positions in adisplay area according to a multidimensional path extending from aterminus. For example, the processing device 104 and/or UI engine 114can arrange the media menu item abstractions according to themultidimensional path 350 of FIG. 4 or the multidimensional path 351 ofFIG. 12.

Stage 404 displays one or more icons in the one or more backgroundpositions in the display area. For example, the processing device 104and/or UI engine 114 can display one or more media menu itemabstractions in one or more background positions.

Stage 406 displays an icon in the foreground position in the displayarea. For example, the processing device 104 and/or UI engine 114 candisplay one or more media menu item abstractions, e.g., media icons inforeground positions.

Stage 408 transitions icons from the foreground and background positionsalong the multidimensional path. For example, the processing device 104and/or UI engine 114 can transition the media menu item abstractions asdescribed with reference to FIGS. 4-12 above.

FIG. 14 is a flow diagram of an example icon transition process 420. Inone example implementation, the processing device 104 and/or UI engine114 can perform operations to implement the process 420.

Stage 422 transitions an icon in the foreground position into abackground position. For example, the processing device 104 and/or UIengine 114 can transition a media menu item abstraction from aforeground position to a background position.

Stage 424 transitions an icon in the background position nearest theterminus of the multidimensional path out of the display environment.For example, the processing device 104 and/or UI engine 114 cantransition media menu item abstractions in the terminus position out ofthe display environment.

FIG. 15 is a flow diagram of another example icon transition process440. In one example implementation, the processing device 104 and/or UIengine 114 can perform operations to implement the process 440.

Stage 442 generates a selection menu defining a plurality of menu items.For example, the processing device 104 and/or UI engine 114 can generatethe media menu 302 and media menu items 310-322.

Stage 444 displays the selection menu proximate to corresponding icons.For example, the processing device 104 and/or UI engine 114 can displaythe media menu 302 proximate to the media menu item abstractions330-342.

Stage 446 highlights a menu item. For example, the processing device 104and/or UI engine 114 can generate the highlight indicator 324 tohighlight a menu item.

Stage 448 transitions an icon that corresponds to the highlighted menuitem into the foreground position. For example, the processing device104 and/or UI engine 114 can transition a media menu item abstractioninto the foreground position.

FIG. 16 is a flow diagram of another example icon transition process460. In one example implementation, the processing device 104 and/or UIengine 114 can perform operations to implement the process 460.

Stage 462 receives a command to change the highlight indicator from ahighlighted menu item to a menu item to be highlighted. For example, theprocessing device 104 and/or UI engine 114 can receive a command tochange the highlight indicator 324 from a highlighted media menu item toa media menu item to be highlighted.

Stage 464 determines if the direction of the highlight indicator duringtransition is in a first direction or a second direction. For example,the processing device 104 and/or UI engine 114 can determine if thehighlight indicator 324 is transitioning in an up direction or a downdirection. While an example two direction method is described, othermulti-directional methods for traversing more or less complicated pathscan be used.

If the direction is in the first direction, stage 466 transitions theicon corresponding to the media menu item to be highlighted from abackground position to the foreground position. For example, theprocessing device 104 and/or UI engine 114 can transition a media menuitem abstraction from a background position to a foreground position.

If the direction is in the first direction, stage 468 transitions thehighlighted icon in the foreground position off the display area. Forexample, the processing device 104 and/or UI engine 114 can transition ahighlighted media menu item abstraction off the media menu interfaceenvironment 300.

If the direction is in the second direction, stage 470 emerges the iconcorresponding to the media menu item to be highlighted into theforeground position. For example, the processing device 104 and/or UIengine 114 can emerge a media menu item abstraction into the foregroundposition.

If the direction is in the second direction, stage 472 transitions anicon in the background position off the display area. For example, theprocessing device 104 and/or UI engine 114 can transition a media menuitem abstraction in the terminus position off the media menu interfaceenvironment 300.

FIGS. 17-20 are screenshots of another example media menu interfaceenvironment. The screenshot 502 of FIG. 17 shows the “Movies” menu itemhighlighted by a highlight indicator. A corresponding Movie icon isdisplayed in a foreground position, and other menu-related icons areblurred in the background positions. Each displayed icon also has areflection depicted.

The screenshots 502 and 504 of FIGS. 18 and 19 show two separate framesduring a transition of the highlight indicator from the “Movies” menuitem to the “TV Shows” menu item. As the highlight indicatortransitions, the Movie icon transitions off the edge of the interfaceenvironment, and the background icons transition in a forward direction,with the TV Shows icon transitioning into the foreground position.

The screenshot 506 of FIG. 20 shows the end result of the transition.The “TV shows” menu item highlighted by a highlight indicator and thecorresponding TV Shows icon is displayed in the foreground position.

In another implementation, only one media menu item abstraction is shownin the foreground position, and additional media menu item abstractionsare not shown in the background position. In this implementation, themedia menu item abstractions that to do not correspond to thehighlighted menu item transition off the display area through themultidimensional path as described above, e.g., through the terminusposition if transitioning into the background position, or by beingdisplaced by a media menu item abstraction emerging into the terminusposition and transitioning from the background into the foregroundposition. Accordingly, only the media menu item abstractioncorresponding to the highlighted menu item is shown.

FIGS. 21 and 22 are block diagrams of an example transition from themedia menu interface environment 300 to a content menu interfaceenvironment. The example transition shown in FIGS. 21 and 22 occurs uponthe selection of a menu item highlighted by the highlight indicator 324,and can, for example, instantiate a corresponding media engine 116. Sucha selection can be initiated by actuating the select area 168 on therotational input device 110, for example.

In one implementation, selection of a media menu item when highlightedgenerates a content menu interface environment for processing media datarelated to such content, e.g., Movies, TV Shows, Music, etc. Uponselection of a highlighted media menu item, e.g., media menu item 310,the corresponding media menu item abstraction, e.g., media menu itemabstraction 330, transitions to the title location occupied by the icon304. Likewise, the title 306 is replaced by the context title of themedia menu item, e.g., “Movies” for media menu item 310.

In one implementation, the size of the media menu item abstraction isscaled from a first display size in the foreground position to a smallerdisplay size as the media menu item abstraction transitions from theforeground position to the title position, as indicated by thedirectional arrow 522 and example size indicators 606 and 608. The sizecan be proportioned, for example, according to a linear function of thedistance of the media menu item abstraction from the title position, orproportioned according to a nonlinear function of the distance of themedia menu item abstraction from the title position.

In one implementation, the media menu item abstractions in thebackground positions transition out of the display area through theterminus position. For example, as shown in FIGS. 21 and 22, the mediamenu item abstractions 332, 334 and 336 transition out of the media menuinterface environment 300 by transitioning along the multidimensionalpath as indicated by the directional arrow 520, and off the edge 352 ofthe media menu interface environment 300.

In another implementation, the media menu 302 fades out of view duringthe transition from the media menu interface environment 300 to thecontent menu interface environment, as depicted in FIG. 22. The mediamenu 302 is replaced by a content menu after fading from view.

FIG. 23 is a block diagram of an example content menu interfaceenvironment 600. The example content menu interface environment 600 ofFIG. 23 corresponds to movie content, and can, for example, appear asthe end result of the transition from the media menu interfaceenvironment 300 to a content menu interface environment as describedwith respect to FIGS. 21 and 22.

In one implementation, the content menu interface environment 600includes a content menu 602 identified in part by a media menu itemabstraction, such as the media menu item abstraction 330, in a titlelocation and a title 606, e.g., “Movies.” The content menu 602 includescontent menu items 610, 612, 614, 616, 618, 620 and 622. The contentmenu 602 can also include the highlight indicator 324 that highlights acontent menu item. A highlight selection of a menu item by the highlightindicator 324 indicates that the menu item is eligible for a furtherselection action, e.g., eligible to be selected by actuating the selectarea 168 on the rotational input device 110.

In one implementation, the first content menu item 610 is a salescontent menu associated with content offered for sale. For example, thecontent menu item 610 is entitled “iTunes Store Presents,” and includesa child indicator 326. Selecting the iTunes Store Presents content menuitem 610 can, for example, transition to another content menu that listsone or more content items available for purchase by download. In oneimplementation, the content items listed for sale correspond to thecontent type of the content menu 602. For example, the content menuinterface environment 600 of FIG. 23 relates to Movies, and thus thecontent items listed in response to selecting the highlighted menu item610 are movies.

In another implementation, another content menu item 612 is a previewcontent menu item. For example, the content menu item 612 is entitled“Theatrical Trailers” and includes a child indicator 326. Selecting theTheatrical Trailers content menu item 612 can, for example, transitionto another content menu that lists one or more theatrical trailers thatmay be streamed to the media processing device 100. Other previewcontent menus may also be used, such as a “Previews” content menu, forexample, that provides previews of movies that are currently availablefor purchase by download, or song clips for songs that are currentlyavailable for purchase by download, etc. In one implementation, thecontent items available for preview correspond to the content type ofthe content menu 602.

The content menu interface environment 600 also includes contentabstractions that correspond to one or more content menu items. Forexample, the content abstractions 630, 632 and 634 correspond to thecontent menu item 610. In one implementation, the content abstractionsare graphical representations of the content corresponding to thehighlighted content menu item. For example, the content abstractions630, 632 and 634, which correspond to the iTunes Presents content menuitem 610, can comprise digital representations of movie posters formovies that are presently offered for sale at iTunes. Alternatively,digital representations of movie stills can be used, or video clips ofthe movies can be used, or some other content abstraction.

In one implementation, the content abstractions can include a reflectioneffect. For example, the content abstractions 630, 632 and 634 caninclude reflections 631, 633, and 635.

In one implementation, a set of content abstractions can be associatedwith a single content menu item, or can be associated with a pluralityof content menu items. In the example content menu interface environment600 of FIG. 23, for example, a first set of content abstractions isassociated with the content menu item 610; a second set of contentabstractions is associated with the second content menu item 612, and athird set of content abstractions is associated with the remainingcontent menu items 614, 616, 618, 620, and 622. Content abstractions canhave the same aspect ratio, or can have different aspect ratios.

The first set of content abstractions, for example, can comprise digitalrepresentations of movie posters for movies that are offered for salethrough the sales content menu item 610. The second set of contentabstractions, for example, can comprise movie clips for movies that areavailable for preview through the preview content menu item 612. Thus,changing the highlight indicator from the first content menu item 610 tothe second content menu item 612 will likewise cause the contentabstractions displayed to change from the first set of contentabstractions to the second set of content abstractions. The remainingcontent menu items 614-622 correspond to content stored in a userlibrary, and thus the third set of content abstractions, for example,can comprise digital representations of movie posters or movie stills ofthe corresponding movies listed in the library content menu items614-622. Thus, changing the highlight indicator from the second contentmenu item 612 to the any of the library content menu items 614-622 willlikewise cause the content abstractions displayed to change from thesecond set of content abstractions to the third set of contentabstractions.

In one implementation, the content abstractions, e.g., contentabstractions 630, 632, and 634, transition along a multidimensional path650 having an ingress terminus 651 and an egress terminus 653 in amanner that provides the effect of transitioning in depth. For example,in FIG. 24, the content abstractions 630, 632, 634 and 636 depthtransition along a three-dimensional coordinate system from the ingressterminus 651 to the egress terminus 653, e.g., along an axissubstantially perpendicular to the screen, or according to an x-, y-,and z-translation in a three-dimensional environment, and the like. Inone implementation, the ingress terminus 651 is within the content menuinterface environment 600, e.g., beneath the content abstraction 634 ofFIG. 23, and the egress terminus 653 is at an edge 652 of the contentmenu interface environment 600. The content abstractions emerge into themultidimensional path 650 at the ingress terminus 651 and are eliminatedfrom the multidimensional path 650 at the egress terminus 653.

To further emphasize the multidimensional aspect, the contentabstractions may rotate about an axis during the transition from theingress terminus 651 to the egress terminus 653. For example, uponelimination at the egress terminus 653, the content abstractions mayrotate about an axis 654 in the direction indicated by the rotationalarrow 655. Likewise, upon entering at the ingress terminus 651, thecontent abstractions may begin a slight rotation about the axis 656 asindicated by the rotational arrow 657. In one implementation, therotation begins at a relatively low angular rate and increases as thecontent abstraction nears the egress terminus 653. In oneimplementation, the rate of rotation increases nonlinearly to simulatean effect that the content abstraction is “flipped” out of the contentmenu interface environment 600.

In one implementation, the content abstractions are cycled sequentiallythrough the multidimensional path 650, e.g., a set of twenty contentabstractions cycle through the multidimensional path in a given order.In another implementation, the content abstractions are cycled randomlythrough the multidimensional path 650, e.g., a set of twenty contentabstractions cycle through the multidimensional path in a random order.

FIG. 24 is a block diagram of an example transition of the contentabstraction 630 through the egress terminus 653. As shown in FIG. 24,the rate of the content abstraction 630 increases significantly as thecontent abstraction nears and begins exiting through the egress terminus653. Additionally, content abstractions 632 and 634 transition in anoverlapping manner along the multidimensional path 650, and anothercontent abstraction 636 emerges at the ingress terminus 651.

In one implementation, content abstractions can repetitively emerge intothe multidimensional path 650 at the ingress terminus 651. Thus, thecontent abstractions appear to cycle through the multidimensional path650. The number of content abstractions that may cycle through themultidimensional path can, for example, depend on the amount of contentassociated with each content menu item or set of content menu items. Forexample, the content menu item 610 may provide access to a list oftwenty titles available for purchase by download, and thus the first setof content abstractions associated with the content menu item 610 maycomprise twenty digital representations of movie posters. Likewise, thecontent menu item 612 may provide access to a list of fifteen titlesavailable for preview, and thus the second set of content abstractionsassociated with the content menu item 612 may comprise fifteen digitalrepresentations of movie posters. Similarly, if the library content menuitems 614, 616, 618, 620 and 622 comprise the entire list of contenttitles in a user's library, then the content abstractions associatedwith the library content menu items 614 616, 618, 620 and 622 maycomprise five digital representations of movie posters.

In another implementation, content abstractions are scaled in size, forexample, proportionally to the proximity of the content abstraction fromthe egress terminus. For example, in FIG. 24, the content abstraction634 can be displayed at approximately 60% of full scale; the contentabstraction 632 can be displayed at 100% of full scale; and the contentabstraction 630 can be displayed at 140% of full scale.

The ingress terminus 651 and egress terminus 653 can be positionedelsewhere in the content menu interface environment 600. For example,the ingress terminus 651 and egress terminus 653 of FIGS. 23 and 24 canbe interchanged to provide the effect of the content abstractionscycling in reverse order through the multidimensional path 650.Similarly, the ingress terminus 651 and/or egress terminus 653 may bepositioned at different locations, e.g., at a top edge or bottom edge ofthe content menu interface environment.

In another implementation, content abstractions associated with multiplecontent menu items may not constantly cycle; instead, a contentabstraction can be transitioned to a foreground position when acorresponding content menu item is highlighted. For example, ahighlighting of any one of the content menu items 614-622 may cycle acontent abstraction corresponding to the highlighted content menu itemto a foreground position, e.g., the position occupied by contentabstraction 630 in FIG. 23. The cycling may then halt until anothercontent menu item is selected.

In another implementation, changing a set of content abstractions isfacilitated by introducing the new set of abstractions through theingress terminus 651 and eliminating the previous set through the egressterminus 653. For example, changing the highlight indicator 324 from thecontent menu item 610 to the content menu item 612 causes the contentabstractions associated with the content menu item 612 to emerge fromthe ingress terminus 651, and precludes the content abstractionsassociated with the content menu item 610 from reemerging afterelimination through the egress terminus 653.

FIG. 25 is a block diagram of an example sales content menu interfaceenvironment 700. The example sales content menu interface environment700 can be generated in response to receiving a selection of highlightedsales content menu item, e.g., iTunes Store Present content menu item610. The example sales content menu interface environment 700 of FIG. 25corresponds to movie content. Other sales content menu interfaceenvironments can also be generated for other content types, e.g., music,television shows, audio books, and the like.

In one implementation, the sales content menu interface environment 700includes a sale content menu 702 identified in part by a media menu itemabstraction, such as the media menu item abstraction 330, in a titlelocation and a title 706, e.g., “iTunes Store Presents.” The salescontent menu 702 includes sales content menu items 710, 712, 714, 716,718, 720, 722 and 724. The bottom sales content menu item 724 ispartially faded, indicating that the list of sales content menu itemscontinues beyond the sales content menu interface environment 700.Scrolling down to the sales content menu item 724 can, for example,causes additional sales content menu items to scroll into the salescontent menu interface environment 750. The sales content menu 702 canalso include the highlight indicator 324 that highlights a sales contentmenu item.

A sales content menu item abstraction 730 can be generated proximate tothe sales content menu 702. In one implementation, the sales contentmenu item abstraction 730 includes a reflection 731. In the exampleimplementation of FIG. 25, the sales content menu item abstraction 730corresponds to the highlighted sales content menu item, e.g., salescontent menu item 710. In another implementation, a plurality of salescontent menu item abstractions can be displayed as transitioning througha multidimensional path such as the multidimensional path 650 of FIG.23. In yet another implementation, a plurality of sales content menuitem abstractions can be displayed in foreground and backgroundpositions along a multidimensional path such as the multidimensionalpath 350 of FIG. 4.

In one implementation, the sales content menu items 710-724 can begenerated according to sales metrics of the provider, e.g., the mostpopular selling content titles. In another implementation, the salescontent menu items 710-724 can be generated using a collaborative filterand based on a user's library titles and/or sales history. Other methodsof identifying sales content can also be used.

FIG. 26 is a block diagram of an example purchase content interfaceenvironment 740. The purchase content interface environment 740 can begenerated in response to selecting a highlighted sale content menu itemin the sales content menu item interface 700.

In one implementation, the example purchase content menu interfaceenvironment 740 includes a purchase content menu 742 identified in partby a media menu item abstraction, such as the media menu itemabstraction 330, in a title location and a title 746. In oneimplementation, the title corresponds to the content title available forpurchase. For example, selecting the content menu item 710 of FIG. 25would result in an interface 740 having a title 746 of “A ScannerDarkly.”

The purchase content menu 742 can include purchase content menu items750, 752 and 754. Selection of the purchase content menu item 750,entitled “Preview,” generates a preview of the content available forpurchase. In one implementation, the preview can, for example, bestreamed from the content provider.

Selecting the purchase content menu item 752, entitled “Purchase,”debits a user's account for the purchase price of the content title anddownloads the content title. In one implementation, the content title isdownloaded to a user's computing device, such as computing device 208,for long term storage. The content title may later be copied to a datastore on the media processing device 100 for viewing, or may be streamedfrom the computing device 208 to the media processing device 100 forviewing.

Selecting the purchase menu item 754, entitled “Other Option,” invokesone or more functions related to other purchase options. For example,reviews of the content title can be provided, or a synopsis of thecontent title can be provided, or other options can be provided.

FIG. 27 is a block diagram of an example preview content interfaceenvironment 760. The preview menu interface environment 760 can begenerated in response to receiving a selection of highlighted previewcontent menu item, e.g., Theatrical Trailers content menu item 612. Theexample preview menu interface environment 760 can include a contentmenu item abstraction, e.g., content menu item abstraction 330, and aplurality of content abstractions 764, 766, 768, 770, 772, 774, 776,778, 780 and 782. In one implementation, the content abstractionsinclude respective reflections 765, 767, 769, 771, 773, 775, 777, 779,781 and 783. A highlight indicator 324 highlights a content abstraction,e.g., content abstraction 764, eligible for selection. A content title761, e.g., “Cars,” and a rating symbol 762 corresponding to a rating ofthe highlighted content title, can also be displayed.

Selection of a highlighted content abstraction can generate a preview ofthe content title. In one implementation, the preview is streamed fromthe content provider. For example, selection of the content abstraction764 can generate a preview for the movie entitled “Cars.” In thisimplementation, the preview comprises a theatrical trailer. In otherimplementations, other previews can be shown, e.g., a short documentary,such as “The Making of Cars” can be shown.

The type of content abstraction displayed can depend on the type ofcontent to be previewed. For example, if the content is movies, then thecontent abstractions can be digital representations of movie posters ormovie stills. Likewise, if the content is audio books, then the contentabstractions can be digital representations of book jackets. Othercontent abstractions can also be displayed.

FIGS. 28 and 29 are block diagrams of another example content menuinterface environment 800. The example content menu interfaceenvironment 800 corresponds to television content, and can, for example,appear as the end result of the transition from the media menu interfaceenvironment 300 to a content menu interface environment after selectingthe media menu item 312 entitled “TV Shows.” A corresponding mediaengine 116 can, for example, be instantiated upon such transition.

In one implementation, the content menu interface environment 800includes a content menu 802 identified in part by a media menu itemabstraction, such as the media menu item abstraction 332, in a titlelocation and a title 804, e.g., “TV Shows.” The content menu 802includes content menu items 812, 814, 816, 818, 820, 822 and 824. Thecontent menu 802 can also include the highlight indicator 324 thathighlights a content menu item. The content menu items, can, forexample, correspond to television shows that have either been recordedfrom a broadcast or purchased from a content provider.

In one implementation, the content menu 802 also includes a sort field806 that includes a first sort option 808 and a second sort option 810.Selection of the first sort option 808 can, for example, sort thecontent menu items by a program category, e.g., a program title. In oneimplementation, multiple instances of the same program title are groupedinto folders, as indicated by the child indicators 326 of FIG. 29. Asingle instance of a program title can, for example, be displayedaccording to a date, as indicated by the date fields 863, 867, 869 and871 of FIG. 29. In one implementation, the date corresponds to anacquisition date, e.g., the date the content title was purchased from acontent provider or recorded from a broadcast. In anotherimplementation, the date corresponds to an episode order for episodiccontent.

Selection of the second sort option 810 sorts the content menu itemsaccording to a date, as indicated by the date fields 815, 817, 819, 821,823, and 825 of FIG. 28. In one implementation, the sort datecorresponds to an acquisition date, e.g., the date the content title waspurchased from a content provider or recorded from a broadcast. Inanother implementation, the sort date corresponds to an episode orderfor episodic content.

In one implementation, the first content menu item 812 is a salescontent menu associated with content offered for sale. For example, thecontent menu item 812 is entitled “iTunes Store Presents,” and includesa child indicator 326. Selecting the iTunes Store Presents content menuitem 812 can, for example, transition to another content menu that listsone or more content items available for purchase by download. In oneimplementation, the content items listed for sale correspond to thecontent type of the content menu 802. For example, the content menuinterface environment 800 of FIG. 28 relates to Television Shows, andthus the content items listed in response to selecting the highlightedmenu item 812 are television programs.

The content menu interface environment 800 also includes contentabstractions that correspond to one or more content menu items. Forexample, the content abstractions 830, 832 and 834 correspond to thecontent menu items 814-824 in FIG. 28 or 860-870 in FIG. 29. In oneimplementation, the content abstractions are graphical representationsof the content corresponding to the highlighted content menu item. Forexample, the content abstractions 830, 832 and 834, which correspond tothe sorted content menu items, can comprise digital representations oftelevision program art or television program stills for televisionprograms that are stored in a library.

In one implementation, the content abstractions can include a reflectioneffect. For example, the content abstractions 830, 832 and 834 caninclude reflections 831, 833, and 835.

In one implementation, a set of content abstractions can be associatedwith a single content menu item, or can be associated with a pluralityof content menu items. In the example content menu interface environment800 of FIG. 28, for example, a first set of content abstractions isassociated with the content menu item 812, and a second set of contentabstractions is associated with remaining content menu items 814-824.The first set of content abstractions can, for example, comprise digitalrepresentations of television program art for television programs thatare offered for sale through the sales content menu item 812, and secondset of content abstractions can correspond to the content titles storedin a user library.

In one implementation, the content abstractions, e.g., contentabstractions 830, 832, and 834, transition along a multidimensional path850 having an ingress terminus 851 and an egress terminus 853. In oneimplementation, the ingress terminus 851 is within the content menuinterface environment 800, e.g., beneath the content abstraction 834 ofFIG. 28, and the egress terminus 853 is at an edge 852 of the contentmenu interface environment 800. The content abstractions emerge into themultidimensional path 850 at the ingress terminus 851 and are eliminatedfrom the multidimensional path 851 at the egress terminus 853. Thecontent abstractions can transition through the multidimensional path850 and rotate about an axis 854 as indicated by the rotational arrow855 in the same manner as described with respect to the contentabstractions of FIGS. 23 and 24.

FIG. 30 is a block diagram of another example content menu interfaceenvironment 900. The example content menu interface environment 900corresponds to music content, and can, for example, appear as the endresult of the transition from the media menu interface environment 300to a content menu interface environment after selecting the media menuitem 314 entitled “Music.” A corresponding media engine 116 can, forexample, be instantiated upon such transition.

In one implementation, the content menu interface environment 900includes a content menu 902 identified in part by a media menu itemabstraction, such as the media menu item abstraction 334, in a titlelocation and a title 906, e.g., “Music.” The content menu 902 caninclude, for example, content menu items 910, 912, 914, 916, 918, 922,and 924. The content menu 902 can also include the highlight indicator324 that highlights a content menu item.

In one implementation, the first content menu item 910 is a salescontent menu associated with content offered for sale. For example, thecontent menu item 910 is entitled “iTunes Store Presents,” and includesa child indicator 326. Selecting the iTunes Store Presents content menuitem 910 can, for example, transition to another content menu that listsone or more content items available for purchase by download. In oneimplementation, the content items listed for sale correspond to thecontent type of the content menu 902. For example, the content menuinterface environment 900 of FIG. 30 relates to music, and thus thecontent items listed in response to selecting the highlighted menu item910 are musical titles and audio titles, e.g., songs, collections, audiobooks, and the like.

In one implementation, selection of the content menu item 912, entitled“Shuffle Play,” initiates a shuffle play of content titles, as indicatedby the shuffle indicator 913. Selection of the content menu item 914,entitled “Music Videos,” lists music videos according to one or moremusic video hierarchal categories. Selection of the content menu item916, entitled “Playlists,” lists playlists according to one or moreplaylist hierarchal categories. Selection of the content menu item 918,entitled “Artists,” lists audio content according to one or more artistshierarchal categories. Selection of the content menu item 920, entitled“Albums,” lists audio content according to one or more hierarchal albumcategories. Selection of the content menu item 922, entitled “Songs,”lists audio content according to one or more songs hierarchalcategories. Selection of the content menu item 924, entitled “AudioBooks,” lists audio books according to one or more audio book hierarchalcategories. Other content menu items can also be used.

The content menu interface environment 900 also includes contentabstractions that correspond to one or more content menu items. Forexample, the content abstractions 930, 932 and 934 correspond to thecontent menu item 910. In one implementation, the content abstractionsare graphical representations of the content corresponding to thehighlighted content menu item. For example, the content abstractions930, 932, 934 and 936, which correspond to the iTunes Presents contentmenu item 910, can comprise digital representations of album art forsongs that are presently offered for sale at iTunes.

In one implementation, the content abstractions can include a reflectioneffect. For example, the content abstractions 930, 932, 934 and 936 caninclude reflections 931, 933, 937, and 937.

In one implementation, a set of content abstractions can be associatedwith a single content menu item, or can be associated with a pluralityof content menu items. In the example content menu interface environment900 of FIG. 30, for example, a first set of content abstractions isassociated with the content menu item 910; a second set of contentabstractions is associated with the second content menu item 912; athird set of content abstractions is associated with content menu item914; a fourth set is associated with the content menu items 916, 918,920 and 922, and a fifth set is associated with the content menu item924.

The first set of content abstractions can, for example, comprise digitalrepresentations of album art for songs that are offered for sale throughthe sales content menu item 910. The second set of content abstractionscan, for example, comprise digital representations of content titlesthat are eligible for selection through a shuffle play. The third set ofcontent abstractions can, for example, comprise digital representationsof music videos, e.g., video stills or video clips, that are categorizedunder the content menu item 914. The fourth set of content abstractionscan, for example, comprise digital representations of content titlescategorized under the content menu items 916, 918, 920 and 922. Thefifth set of content abstractions can, for example, comprise digitalrepresentations of book jacket art for audio books that are categorizedunder the content menu item 924.

In one implementation, the content abstractions, e.g., contentabstractions 930, 932, and 934, transition along a multidimensional path950 having an ingress terminus 951 and an egress terminus 953. In oneimplementation, the ingress terminus 951 is within the content menuinterface environment 900, e.g., beneath the content abstraction 934 ofFIG. 30, and the egress terminus 953 is at an edge 952 of the contentmenu interface environment 900. The content abstractions emerge into themultidimensional path 950 at the ingress terminus 951 and are eliminatedfrom the multidimensional path 951 at the egress terminus 953. Thecontent abstractions can transition through the multidimensional path950 and rotate about an axis 954 as indicated by the rotational arrow955 upon egress in a similar manner as described with respect to thecontent abstractions of FIGS. 23 and 24, except that the rotation inFIG. 30 is reversed, i.e., counterclockwise.

Additionally, the content abstractions can initially rotate in aclockwise direction, as indicated by the rotational arrow 957, about anaxis 956. In one implementation, the content abstractions enter theingress terminus 951 at approximately a normal disposition, e.g.,approximately 90 degrees, and rotate in the clockwise direction duringthe transition through the multidimensional path 950.

FIG. 31 is a block diagram of another example content menu interfaceenvironment 1000. The example content menu interface environment 1000corresponds to photographic content, and can, for example, appear as theend result of the transition from the media menu interface environment300 to a content menu interface environment after selecting the mediamenu item 318 entitled “Photos.” A corresponding media engine 116 can,for example, be instantiated upon such transition.

In one implementation, the content menu interface environment 1000includes a content menu 1002 identified in part by a media menu itemabstraction, such as the media menu item abstraction 338, in a titlelocation and a title 1006, e.g., “Photos.” The content menu 1002 caninclude, for example, content menu items 1010, 1012, 1014, 1016, 1018,1022, and 1024. The content menu 1002 can also include a highlightindicator 325 that highlights a content menu item. In thisimplementation, the highlight indicator 325 is rectangular, and includesa backlit-style glow highlight.

In one implementation, the first content menu item 1010 is an “All”content menu associated with all photographic content stored in a userlibrary. Selection of the content menu item 1010 can, for example, listall photographs stored in a user library. Selection of the content menuitem 1012, entitled “Shuffle,” initiates a shuffle presentation ofphotos, as indicated by the shuffle indicator 1013. Selection of thecontent menu item 1014, entitled “Last Roll,” lists photographscollected during a most recent photographic session. Selection of thecontent menu items 1016-1024 lists photographs categorized under eachrespective content menu item. Content menu items that include a childindicator 326, e.g., content menu items 1020, 1022, and 1024, caninclude one or more subfolder categories. Other content menu items canalso be used.

The content menu interface environment 1000 also includes contentabstractions that correspond to one or more content menu items. Forexample, the content abstractions 1030, 1032, 1034 and 1036 correspondto the content menu item 1010. In one implementation, the contentabstractions are the photographs associated with each content menu item.In one implementation, a set of content abstractions can be associatedwith a single content menu item, or can be associated with a pluralityof content menu items. In the example content menu interface environment1000 of FIG. 31, for example, each content menu item has a correspondingset of content menu item abstractions.

In one implementation, the content abstractions can include a reflectioneffect. For example, the content abstractions 1030, 1032, 1034 and 1036can include reflections 1031, 1033, 1035 and 1037.

In one implementation, the content abstractions, e.g., contentabstractions 1030, 1032, 1034 and 1036, transition along amultidimensional path 1050 having an ingress terminus 1051 and an egressterminus 1053. In one implementation, the ingress terminus 1051 iswithin the content menu interface environment 1000, e.g., beneath thecontent abstraction 1034 of FIG. 31, and the egress terminus 1053 is atan edge 1052 of the content menu interface environment 1000. The contentabstractions emerge into the multidimensional path 1050 at the ingressterminus 1051 and are eliminated from the multidimensional path 1051 atthe egress terminus 1053. The content abstractions can transitionthrough the multidimensional path 1050 and rotate about an axis 1054 asindicated by the rotational arrow 1055 in a similar manner as describedwith respect to the content abstractions of FIGS. 23 and 24.

FIG. 32 is a block diagram of an example rendering of contentabstractions in a multidimensional environment 1100. The perspective ofFIG. 32 is a top view of the multidimensional environment 1100, e.g., atop view of a three-dimensional space. An x-axis 1102 defines a frontplane and a z-axis 1104 defines side plane in the multidimensionalenvironment 1100. The plane of the x-axis 1102 can, for example, be aviewing surface of a user interface as viewed from a camera 1106perspective.

A plurality of content abstractions 1110, 1112, 1114 and 1116 transitionalong a multidimensional path defined by positions 1120, 1122, 1124 and1126. Each of the content abstractions 1110, 1112, 1114 and 1116 has acorresponding front surface depiction 1111, 1113, 1115 and 1117 on whichcontent may be displayed, e.g., movie poster art, album art, photos,video clips, text, or other content types.

The example rendering of the multidimensional environment 1110 shows atop view of a frame during which each of the content abstractions 1110,1112, 1114 and 1116 are coincident with respective positions 1120, 1122,1124 and 1126, respectively. The x- and z-coordinates and the angle ofthe front surface of each content abstraction relative to the x-axis areprovided in Table 1 below:

TABLE 1 Position: 1120 1122 1124 1126 Angle: 90° 0° 30° 90°z-coordinate: −2000 −1000 0 1000 x-coordinate: 207 138 69 0

In the example implementation of FIG. 32, the content abstractions canprogress from position 1120 to 1126. In another implementation, thecontent abstractions can progress from position 1126 to position 1120.

Also in the example implementation of FIG. 32, the content abstractionsprogress at a constant rate along the x-axis and z-axis, e.g., 1000units along the z-axis and 69 units along the x-axis between eachposition 1120, 1122, 1124 and 1126 and over a given number of frames. Inother implementations, the rate along one or both axes may vary eithersubstantially linearly or substantially non-linearly.

Also in the example implementation of FIG. 32, the y-coordinates of thepositions are selected to generate the appearance that the contentabstractions are moving along a common plane. In other implementations,the y-coordinate may be varied to generate the effect that the contentabstractions are descending, ascending, or floating on separate planes.Other effects can also be generated.

As the content abstractions 1110, 1112, 1114 and 1116 transition toadjacent positions, the respective angle of each abstraction is rotatedas indicated by rotational direction arrows 1130, 1132 and 1134. Thus,during the transition from a first position, e.g., position 1120, to asecond position, e.g. position 1122, a content abstraction, e.g.,content abstraction 1110, rotates in a direction, e.g., clockwise, from90 degrees to 0 degrees. Similarly, during the transition from position1122 to position 1124, the content abstraction rotates from 0 degrees to30 degrees in a direction, e.g., counterclockwise; and during thetransition from position 1124 to position 1126, the content abstractionrotates from 30 degrees to 90 degrees in a direction, e.g.,counterclockwise. Other rotational ranges and rotational directions canalso be selected. Additionally, the number of positions can beincreased, e.g., to five, six, etc., or decreased, e.g., to three oreven two.

In one implementation, the rate of rotation between positions issubstantially linear. For example, if a content abstraction moves oneunit in the x-direction and approximately 14.5 units in the z-directionduring each video frame, and each location is separated by 69 unitsalong the x-axis and 1000 units along the z-axis, then approximately 69video frames are generated during a transition of a content abstractionfrom any position to an adjacent position. Accordingly, during thetransition from position 1120 to 1122, a content abstraction will rotateapproximately 90/69 degrees for each video frame, or about 1.3 degreesfor each video frame. Likewise, during the transition form position 1122to 1124, a content abstraction will rotate approximately 30/69 degrees,or about 0.43 degrees for each video frame; and during the transitionform position 1124 to 1126, a content abstraction will rotateapproximately 30/69 degrees, or about 0.87 degrees for each video frame.

In another implementation, the rotational rate between positions can besubstantially non-linear. For example, the rotational rate during atransition from a first position to a second position may exponentiallydecrease (or increase), thus providing the appearance of an initiallyrapid but over-damped rotation beginning at each position (e.g.,positions 1120, 1122, 1124 and 1126). Other rotational rate processescan also be used.

In another implementation, the content abstraction can obtain a finalangle associated with an adjacent position before transitioning to theadjacent position. For example, during a transition from a firstposition to a second position, a content abstraction can obtain theangle associated with the second position mid-way through the transitionand cease rotating. The content abstraction can again rotate uponreaching the second position, at which time a transition to a thirdposition associated with another angle begins.

In another implementation, a content abstraction may also “fade-in” uponemergence into the multidimensional path defined by the positions 1120,1122, 1124 and 1126. For example, the content abstraction 1110 may fadeinto view during the transition from the position 1120 to position 1122.

In one implementation, the multidimensional environment 1100 is renderedutilizing a rendering thread and a queuing thread. The rendering threadupdates the positions of the content abstractions in themultidimensional environment 1100, and frees memory and processingresources associated with content abstractions that have transitionedbeyond position 1126. The queuing thread loads image data from mediaassets, e.g., image files of movie posters, for example. When therendering thread pulls a content abstraction from the queue, the queuingthread loads another image to generate another content abstraction. Inone implementation, the queuing thread maintains at least two contentabstractions in a queue for the rendering thread. Other processingmethods and allocations of resources can also be used.

FIG. 33 is a block diagram of another example content menu interfaceenvironment 1200. The example content menu interface environment 1200corresponds to streaming content, and can, for example, appear as theend result of the transition from the media menu interface environment300 to a content menu interface environment after selecting the mediamenu item 322 entitled “Streaming.” A corresponding media engine 116can, for example, be instantiated upon such transition.

In one implementation, the content menu interface environment 1200includes a content menu 1202 identified in part by a media menu itemabstraction, such as the media menu item abstraction 342, in a titlelocation and a title 1206, e.g., “Streaming.” The content menu 1202 caninclude, for example, content menu items 1210, 1212, 1214, and 1216. Thecontent menu 1202 can also include the highlight indicator 324 thathighlights a content menu item.

Each of the content menu items 1210, 1212, 1214 and 1216 can, forexample, correspond to a data store accessible over a local areanetwork, e.g., one or more computers accessible over a wireless or wirednetwork. Each of the corresponding data stores can store content thatcan, for example, be pushed to or pulled to the media processing system100. For example, the data store corresponding to the content menu item1210 may store photographic files; the data store corresponding to thecontent menu item 1212 may store movie and video files; the data storecorresponding to content menu item 1214 may store music files; and thedata store corresponding to content menu item 1216 may store all of thedata files stored in the data stores corresponding to content menu items1210, 1212, and 1214. The files may be downloaded to the mediaprocessing system 100 or streamed to the media processing 100 forprocessing.

FIG. 34 is a flow diagram of an example process 1300 for generating amedia menu interface environment. In one example implementation, theprocessing device 104 and/or UI engine 114 can perform operations toimplement the process 1300.

Stage 1302 generates a media menu interface comprising a plurality ofmedia menu items. For example, the processing device 104 and/or UIengine 114 can display one or more media menu items 310-322 in the mediamenu interface environment 330.

Stage 1304 generates a plurality of media menu item abstractionscorresponding to the media menu items. For example, the processingdevice 104 and/or UI engine 114 can generate one or more media menu itemabstractions 330-342.

Stage 1306 arranges the media menu item abstractions so that a mediamenu item abstraction corresponding to a highlighted media menu item isdisplayed in a foreground position. For example, the processing device104 and/or UI engine 114 can display a media menu item abstraction in aforeground position, such as media menu item abstraction 330 in FIG. 4.

Stage 1308 arranges the media menu item abstractions so that the mediamenu item abstractions corresponding to media menu items that are nothighlighted are displayed in background positions. For example, theprocessing device 104 and/or UI engine 114 can display media menu itemabstractions in the background positions, such as the media menu itemabstractions 332-336 in FIG. 4.

FIG. 35 is a flow diagram of an example process for transitioning from amedia menu interface environment to a content menu interfaceenvironment. In one example implementation, the processing device 104and/or UI engine 114 and corresponding media engine 116 can performoperations to implement the process 1320.

Stage 1322 receives a selection of a highlighted media menu item, andstage 1324 transitions the media menu item abstraction corresponding tothe highlighted media menu item from a present position to a titleposition. For example, the processing device 104 and/or UI engine 114can process a selection and perform the transition such as thetransition depicted in FIGS. 21 and 22.

Stage 1326 generates a content menu in proximity to the title position.For example, the processing device 104 and/or UI engine 114 andcorresponding media engine 116 can generate a corresponding content menuin proximity to the title position, such as the content menu 602 shownin FIG. 23.

FIG. 36 is a flow diagram of an example process 1340 for displayingcontent abstractions. In one example implementation, the processingdevice 104 and/or UI engine 114 and corresponding media engine 116 canperform operations to implement the process 1340.

Stage 1342 generates content abstractions. In one implementation, thecontent abstractions can correspond to content items or content menuitems. For example, the processing device 104 and/or UI engine 114 andcorresponding media engine 116 can generate the content abstractions,such as the content abstractions 630-634 shown in FIG. 23.

Stage 1344 defines a multidimensional path having an ingress terminusand an egress terminus. For example, the processing device 104 and/or UIengine 114 and corresponding media engine 116 can define amultidimensional path having an ingress terminus and an egress terminus,such as the multidimensional path 650 shown in FIG. 23.

Stage 1346 emerges the content abstractions into the multidimensionalpath at the ingress terminus. For example, the processing device 104and/or UI engine 114 and corresponding media engine 116 can emerge thecontent abstractions into the multidimensional path at the ingressterminus, such as the ingress terminus 651 shown in FIG. 23.

Stage 1348 eliminates the content abstractions from the multidimensionalpath at the egress terminus. For example, the processing device 104and/or UI engine 114 and corresponding media engine 116 can eliminatethe content abstractions from the multidimensional path at the egressterminus, such as the egress terminus 653 shown in FIG. 23.

Stage 1350 generates depth transitions of the content abstractionsthrough the multidimensional path from the ingress terminus to theegress terminus. For example, the processing device 104 and/or UI engine114 and corresponding media engine 116 can generate depth transitions ofthe content abstractions through the multidimensional path from theingress terminus to the egress terminus, such as the depth transitionsshown in FIG. 24.

Stage 1352 reemerges the content abstractions eliminated at the egressterminus into the multidimensional path at the ingress terminus. Forexample, the processing device 104 and/or UI engine 114 andcorresponding media engine 116 can reemerge the content abstractionseliminated at the egress terminus into the multidimensional path at theingress terminus, such as the ingress terminus 651.

FIG. 37 is a flow diagram of an example process 1360 for generatingcontent abstractions corresponding to content menu items. In one exampleimplementation, the processing device 104 and/or UI engine 114 andcorresponding media engine 116 can perform operations to implement theprocess 1360.

Stage 1362 generates a content menu in proximity to a title position.For example, the processing device 104 and/or UI engine 114 andcorresponding media engine 116 can generate a content menu in proximityto a title position, such as the content menu 602 shown in FIG. 23.

Stage 1364 generates a sales content menu item. For example, theprocessing device 104 and/or UI engine 114 and corresponding mediaengine 116 can generate a sales content menu item, such as the “iTunesStore Presents” content menu item 610 shown in FIG. 23.

Stage 1366 generates library content menu items. For example, theprocessing device 104 and/or UI engine 114 and corresponding mediaengine 116 can generate the content library menu items, such as thecontent menu items 614-622 shown in FIG. 23.

Stage 1368 generates content abstractions corresponding to the salescontent menu item. For example, the processing device 104 and/or UIengine 114 and corresponding media engine 116 can generate contentabstractions for the corresponding sale content menu item by receivingcontent information from a content provider, such as the contentabstractions 630, 632 and 634 shown in FIG. 23.

Stage 1370 generates content abstractions corresponding to a group oflibrary content menu items. For example, the processing device 104and/or UI engine 114 and corresponding media engine 116 can generatecontent abstractions corresponding to a group of library content menuitems from content data stored in one or more user libraries, such ascontent abstractions corresponding to library content menu items614-622.

FIG. 38 is a flow diagram of an example process 1380 for sorting librarymenu items. In one example implementation, the processing device 104and/or UI engine 114 and corresponding media engine 116 can performoperations to implement the process 1380.

Stage 1382 generates a content menu in proximity to a title position.For example, the processing device 104 and/or UI engine 114 andcorresponding media engine 116 can generate a content menu in proximityto a title position, such as the content menu 802 shown in FIG. 28.

Stage 1384 generates a title sort menu item. For example, the processingdevice 104 and/or UI engine 114 and corresponding media engine 116 cangenerate a title sort menu item, such as the sort option 808 shown inFIG. 28.

Stage 1386 generates a date sort menu item. For example, the processingdevice 104 and/or UI engine 114 and corresponding media engine 116 cangenerate a date sort menu item, such as the sort option 810 shown inFIG. 28.

Stage 1388 generates one or more library content menu items. Forexample, the processing device 104 and/or UI engine 114 andcorresponding media engine 116 can generate the library content menuitems, such as the library content menu items 814-824 shown in FIG. 28.

Stage 1390 sorts the library content menu items according to a sortselection. For example, the processing device 104 and/or UI engine 114and corresponding media engine 116 can sort the library content menuitems according to a selection of either the title sort menu item or thedate sort menu item, such as the sorted library content menu items814-824 as shown in FIG. 28 or the sorted library content menu items860-870 shown in FIG. 29.

The stages recited in the example processes of FIGS. 13-16 and 34-38need not be performed in the example orders set forth.

FIG. 39 is a diagram of an example media playback environment 1400. Theexample media playback environment 1400 can include a media abstraction1402, such as an image of album cover art, and a correspondingreflection 1404 of the media abstraction 1402. During playback ofcorresponding content, e.g., a song, content metadata can be displayed,such as the song title 1406, the CD title 1406, and a band name 148. Anexample transport bar 1410 includes an position indicator 1412 thatindicates an index related to the content playback. In the exampleimplementation of FIG. 39, the index is a time index. To the left of theindicator 1412 the transport bar is shaded a first color, and to theright of the indicator the transport bar is shaded a second color. Afirst index field 1414 indicates the time elapsed, and a second indexfield 1416 indicates the time remaining.

The example implementations described herein can be implemented forvarious other media types and content. For example, access to andmanagement of satellite radio programs, web blogs, syndicated mediacontent, or other media types and content can be realized by the exampleimplementations described herein.

The apparatus, methods, flow diagrams, and structure block diagramsdescribed in this patent document may be implemented in computerprocessing systems including program code comprising programinstructions that are executable by the computer processing system.Other implementations may also be used. Additionally, the flow diagramsand structure block diagrams described herein, which describe particularmethods and/or corresponding acts in support of steps and correspondingfunctions in support of disclosed structural means, may also be utilizedto implement corresponding software structures and algorithms, andequivalents thereof.

This written description sets forth the best mode of the invention andprovides examples to describe the invention and to enable a person ofordinary skill in the art to make and use the invention. This writtendescription does not limit the invention to the precise terms set forth.Thus, while the invention has been described in detail with reference tothe examples set forth above, those of ordinary skill in the art mayeffect alterations, modifications and variations to the examples withoutdeparting from the scope of the invention.

1. A method, comprising: generating a media menu interface comprising aplurality of media menu items; defining a plurality of media menu itempositions in the media menu interface for the plurality of media menuitems, each of the media menu item positions arranged along aone-dimensional path; highlighting with a highlight indicator a mediamenu item for selection; generating in the media menu interface aplurality of media menu item abstractions corresponding to the mediamenu items; defining a foreground position and a plurality of backgroundpositions in the media menu interface, each of the foreground positionand background positions arranged along a multidimensional path separatefrom the one-dimensional path and being a position to which the mediamenu item abstractions transition according to the highlighted mediamenu item, and wherein the media menu item abstractions are displayed inthe positions along the multidimensional path concurrently with themedia menu items being displayed in the media menu item positions alongthe one-dimensional path; transitioning the media menu item abstractionsinto each of the background positions and the foreground position sothat a media menu item abstraction corresponding to the highlightedmedia menu item transitions into the foreground position and after thetransition is displayed in the foreground position, and media menu itemabstractions corresponding to media menu items that are not highlightedtransition into the background positions and after the transition aredisplayed in the background positions, wherein a media menu itemabstraction is displayed in each of the foreground position andbackground positions after each transition, and a relative proximity ofa media menu item to its corresponding media menu item abstractionchanges in relation to a position of the highlight indicator relative tothe menu item; receiving a selection of a highlighted media menu item;and transitioning a media menu item abstraction corresponding to theselected media menu item from the foreground position to a titleposition along the one-dimensional path, wherein after the media menuitem abstraction has been transitioned into the title position the mediamenu item abstraction is displayed only in the title position and themedia menu item abstractions corresponding to the media menu items thatare not selected are not displayed.
 2. The method of claim 1,comprising: blurring one or more of the media menu item abstractions inthe background positions.
 3. The method of claim 1, comprising:generating a content menu in proximity to the title position, thecontent menu comprising content menu items based on the selected mediamenu item, and wherein each of the content menu items are displayed inthe media menu item positions arranged along the one-dimensional path;and concurrently displaying content abstractions with the content menu,the content abstractions displayed along another multidimensional pathadjacent to the content menu items and corresponding to at least one ofthe content menu items.
 4. The method of claim 3, wherein concurrentlydisplaying content abstractions with the content menu comprises:generating content abstractions; defining the another multidimensionalpath having an ingress terminus and an egress terminus; emerging thecontent abstractions into the another multidimensional path at theingress terminus; eliminating the content abstractions from the anothermultidimensional path at the egress terminus; and generating depthtransitions of the content abstractions through the anothermultidimensional path from the ingress terminus to the egress terminus.5. The method of claim 1, wherein transitioning a media menu itemabstraction corresponding to the selected media menu item from theforeground position to a title position along the one-dimensional pathfurther comprises transitioning the media menu item abstractionscorresponding to the media menu items that are not selected out of themedia menu interface along the multidimensional path so that the mediamenu items that are not selected are not displayed.
 6. A computerreadable medium storing instructions that are executable by a processingdevice, and upon such execution cause the processing device to performoperations comprising: generating a home interface environment;generating a home menu within the home interface environment, the homemenu comprising a plurality of home menu items; defining a plurality ofhome menu item positions for the plurality of home menu items, each ofthe home menu item positions arranged along a one-dimensional path;providing a highlight indicator to highlight one of the home menu itemsfor selection; generating in the home interface environment a pluralityof home menu item abstractions corresponding to the home menu items;defining a foreground position and a plurality of background positionsin the home interface environment, each of the foreground position andbackground positions being a position to which the home menu itemabstractions transition according to the highlighted home menu item,wherein the foreground position and the background positions arearranged along a multidimensional path separate from the one-dimensionalpath, the multidimensional path extending from a terminus, and whereinthe home menu item abstractions are displayed in the positions along themultidimensional path concurrently with the home menu items beingdisplayed in the media menu item positions along the one-dimensionalpath; transitioning the home menu item abstractions into each of theforeground position and the background positions along themultidimensional path so that a home menu item abstraction correspondingto a highlighted home menu item transitions into the foreground positionand is displayed in the foreground position after the transition, andeach home menu item abstraction corresponding to a home menu item thatis not highlighted transitions into a background position and isdisplayed in that background position after the transition, wherein ahome menu item abstraction is displayed in each of the foregroundposition and background positions after each transition and a relativeproximity of a home menu item to its corresponding home menu itemabstraction changes in relation to a position of the highlight indicatorrelative to the home menu item; receiving a selection of a home menuitem; and transitioning a home menu item abstraction corresponding tothe selected home menu item from the foreground position to a titleposition along the one-dimensional path, wherein after the home menuitem abstraction has been transitioned into the title position the homemenu item abstraction is displayed only in the title position and thehome menu item abstractions corresponding to the home menu items thatare not selected are not displayed.
 7. The computer readable medium ofclaim 6, storing further instructions that are executable by theprocessing device, and upon such execution cause the processing deviceto perform operations comprising: blurring the home menu itemabstractions in the background positions.
 8. The computer readablemedium of claim 6, storing further instructions that are executable bythe processing device, and upon such execution cause the processingdevice to perform operations comprising: changing the highlightindicator from the highlighted home menu item to another home menu item;transitioning a home menu item abstraction corresponding to the anotherhome menu item from a background position to the foreground positionwhen the home menu item abstractions transition into the foregroundposition and the background positions in a first direction; and emerginga home menu item abstraction corresponding to the another home menu iteminto the foreground position when the home menu item abstractionstransition into the foreground position and the background positionsalong the multidimensional path in a second direction.
 9. The computerreadable medium of claim 8, wherein: the home menu item abstractionscomprise media icons.
 10. The computer readable medium of claim 6,storing further instructions that are executable by the processingdevice, and upon such execution cause the processing device to performoperations comprising: generating a content menu in proximity to thetitle position, the content menu comprising content menu items based onthe selected home menu item, and wherein each of the content menu itemsare displayed in the home menu item positions arranged along theone-dimensional path; and concurrently displaying content abstractionswith the content menu, the content abstractions displayed adjacent tothe content menu items and corresponding to at least one of the contentmenu items.
 11. The computer readable medium of claim 10, whereinconcurrently displaying content abstractions with the content menucomprises: generating content abstractions related to a highlightedcontent menu item; defining the another multidimensional path having aningress terminus and an egress terminus; emerging the contentabstractions into the another multidimensional path at the ingressterminus; eliminating the content abstractions from the anothermultidimensional path at the egress terminus; and generating depthtransitions of the content abstractions through the anothermultidimensional path from the ingress terminus to the egress terminus.12. The computer readable medium of claim 11, storing furtherinstructions that are executable by the processing device, and upon suchexecution cause the processing device to perform operations comprising:generating overlapping depth transitions of the content abstractions asthe content abstractions transition through the another multidimensionalpath from the ingress terminus to the egress terminus.
 13. The computerreadable medium of claim 12, wherein transitioning a home menu itemabstraction corresponding to the selected home menu item from theforeground position to a title position along the one-dimensional pathfurther comprises transitioning the home menu item abstractionscorresponding to the home menu items that are not selected out of thehome interface environment along the multidimensional path so that thehome menu items that are not selected are not displayed.
 14. A computerdevice, comprising: a data processing subsystem; a memory storinginstructions executable by the processing subsystem and upon suchexecution cause the processing subsystem to perform operationscomprising: generating, on a display device, a media menu interfacecomprising a plurality of media menu items; defining a plurality ofmedia menu item positions in the media menu interface for the pluralityof media menu items, each of the media menu item positions arrangedalong a one-dimensional path; highlighting, in the display device andwith a highlight indicator, a media menu item for selection; generatingin the media menu interface a plurality of media menu item abstractionscorresponding to the media menu items; defining a foreground positionand a plurality of background positions in the media menu interface,each of the foreground position and background positions arranged alonga multidimensional path separate from the one-dimensional path and beinga position to which the media menu item abstractions transitionaccording to the highlighted media menu item, and wherein the media menuitem abstractions are displayed in the positions along themultidimensional path concurrently with the media menu items beingdisplayed in the media menu item positions along the one-dimensionalpath; transitioning, in the display device, the media menu itemabstractions into each of the background positions and the foregroundposition so that a media menu item abstraction corresponding to thehighlighted media menu item transitions into the foreground position andafter the transition is displayed in the foreground position, and mediamenu item abstractions corresponding to media menu items that are nothighlighted transition into the background positions and after thetransition are displayed in the background positions, wherein a mediamenu item abstraction is displayed in each of the foreground positionand background positions after each transition, and a relative proximityof a media menu item to its corresponding media menu item abstractionchanges in relation to a position of the highlight indicator relative tothe menu item; receiving a selection of a highlighted media menu item;and transitioning, in the display device, a media menu item abstractioncorresponding to the selected media menu item from the foregroundposition to a title position along the one-dimensional path, whereinafter the media menu item abstraction has been transitioned into thetitle position the media menu item abstraction is displayed only in thetitle position and the media menu item abstractions corresponding to themedia menu items that are not selected are not displayed.